package com.wuotng.xsxx.jbxx.service.impl;

import java.util.List;
import com.wuotng.common.utils.DateUtils;
import com.wuotng.common.utils.uuid.IdUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.wuotng.xsxx.jbxx.mapper.JbxxMapper;
import com.wuotng.xsxx.jbxx.domain.Jbxx;
import com.wuotng.xsxx.jbxx.service.IJbxxService;

import static com.wuotng.common.utils.SecurityUtils.*;

/**
 * 学籍信息Service业务层处理
 * 
 * @author ruoyi
 * @date 2025-05-13
 */
@Service
public class JbxxServiceImpl implements IJbxxService 
{
    @Autowired
    private JbxxMapper jbxxMapper;

    /**
     * 查询学籍信息
     * 
     * @param jbxxId 学籍信息主键
     * @return 学籍信息
     */
    @Override
    public Jbxx selectJbxxByJbxxId(String jbxxId)
    {
        return jbxxMapper.selectJbxxByJbxxId(jbxxId);
    }

    /**
     * 查询学籍信息列表
     * 
     * @param jbxx 学籍信息
     * @return 学籍信息
     */
    @Override
    public List<Jbxx> selectJbxxList(Jbxx jbxx)
    {
        return jbxxMapper.selectJbxxList(jbxx);
    }

    /**
     * 新增学籍信息
     * 
     * @param jbxx 学籍信息
     * @return 结果
     */
    @Override
    public int insertJbxx(Jbxx jbxx)
    {
        jbxx.setJbxxId(IdUtils.fastSimpleUUID());
        jbxx.setCreateTime(DateUtils.getNowDate());
        jbxx.setCreateBy(getUsername());
        jbxx.setUserId(getUserId());
        jbxx.setDeptId(getDeptId());
        return jbxxMapper.insertJbxx(jbxx);
    }

    /**
     * 修改学籍信息
     * 
     * @param jbxx 学籍信息
     * @return 结果
     */
    @Override
    public int updateJbxx(Jbxx jbxx)
    {
        jbxx.setUpdateTime(DateUtils.getNowDate());
        return jbxxMapper.updateJbxx(jbxx);
    }

    /**
     * 批量删除学籍信息
     * 
     * @param jbxxIds 需要删除的学籍信息主键
     * @return 结果
     */
    @Override
    public int deleteJbxxByJbxxIds(String[] jbxxIds)
    {
        return jbxxMapper.deleteJbxxByJbxxIds(jbxxIds);
    }

    /**
     * 删除学籍信息信息
     * 
     * @param jbxxId 学籍信息主键
     * @return 结果
     */
    @Override
    public int deleteJbxxByJbxxId(String jbxxId)
    {
        return jbxxMapper.deleteJbxxByJbxxId(jbxxId);
    }
}
